Speech recognition systems, or automatic speech recognizers, have become increasingly important as more and more computer-based devices use speech recognition to receive commands from a user in order to perform some action as well as to convert speech into text for dictation applications or even hold conversations with a user where information is exchanged in one or both directions. Such systems may be speaker-dependent, where the system is trained by having the user repeat words, or speaker-independent where anyone may provide immediately recognized words. Some systems also may be configured to understand a fixed set of single word commands, such as for operating a mobile phone that understands the terms call or answer, or for simple data entry phone calls for example.
Thus, automatic speech recognition (ASR) is desirable for wearables, smartphones, and other small devices. Due to the computational complexity of ASR, however, many ASR systems for small devices are server based such that the computations are performed remotely from the device, which can result in a significant delay. Other ASR systems that have on-board computation ability also are too slow, provide relatively lower quality word recognition, and/or consume too much power of the small devices to perform the computations. Thus, a good quality ASR system that provides fast word recognition with lower power consumption is desired.